Rewrite kime-wayland, update dependencies, and fix indicator issues#743
Merged
Riey merged 16 commits intoRiey:developfrom Jan 28, 2026
Merged
Rewrite kime-wayland, update dependencies, and fix indicator issues#743Riey merged 16 commits intoRiey:developfrom
Riey merged 16 commits intoRiey:developfrom
Conversation
62e56540 input method commit fix
KDE Plasma 6.5.5 upgraded wl_keyboard grab from version 1 to 10, which introduces KeyState::Repeated (value 2). Previously, kime-wayland only checked for KeyState::Pressed, causing Repeated events to be incorrectly treated as Released, leading to crashes. Changes: - Handle KeyState::Repeated same as Pressed in input_method_v1/v2 - Only clear repeat timer and state on explicit KeyState::Released - Update wayland-client/protocols 0.29 → 0.29.5 - Update xkbcommon 0.7.0 → 0.9.0 Fixes intermittent crashes on KDE Plasma 6.5.5
- Replace std::os::unix::net with tokio::net for async Unix socket I/O - Convert try_terminate_previous_server to async function - Use tokio::time::timeout for read/write timeouts - Add assume_sni_available(true) to handle DE initialization timing This fixes the issue where the tray icon was blank and not updating on KDE after ksni 0.2 -> 0.3.3 upgrade. The blocking I/O was preventing the async tray update signals from being processed properly.
- xkbcommon: 0.7.0 → 0.9.0 - wayland-client: 0.29 → 0.29.5 - wayland-protocols: 0.29 → 0.29.5 - itertools: 0.13 → 0.14 - imageproc: 0.25 → 0.26 (with text feature) - strum: 0.26 → 0.27 - eframe: 0.31 → 0.33 - egui: 0.31 → 0.33 - bindgen: 0.69.4 → 0.72.1 - cbindgen: 0.26.0 → 0.29.2
BREAKING CHANGE: Complete rewrite of kime-wayland for wayland-rs 0.31+ Major changes: - Migrate from Filter-based to Dispatch trait pattern (wayland-client 0.31) - Update wayland-protocols to 0.32 with `unstable` feature for v1 protocol - Add wayland-protocols-misc 0.3 for zwp_input_method_v2 and zwp_virtual_keyboard_v1 - Remove zwp-virtual-keyboard crate (now included in wayland-protocols-misc) - Unify v1 and v2 input method handling in single state machine Technical fixes: - Add event_created_child! macro for ZwpInputMethodV1 opcode 0 (Activate event) - Fix fd ownership in WlKeyboard::Keymap (wayland-client 0.31 provides OwnedFd directly) - Handle KeyState::Repeated (wl_keyboard version 10+) for KDE Plasma 6.5.5 - Use Connection-based API instead of Display Other dependency updates: - xdg 2.5 -> 3.0 (API change: remove Result from BaseDirectories methods) - quick-xml 0.27 -> 0.39 (API change: decode_and_unescape_value takes decoder())
Tmp rework
Contributor
Author
Riey
reviewed
Jan 28, 2026
Removed the BREAKING label from the kime-wayland rewrite entry.
Co-authored-by: Riey <creeper844@gmail.com>
Contributor
Author
|
@Riey 수고하셨습니다. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Rewrite kime-wayland for wayland-rs 0.31+ API
Fix KDE Plasma 6.5.5 crashes (KeyState::Repeated handling)
Fix indicator tray icon with tokio async I/O
Update major dependencies
Remove unused dependencies
kime-wayland를 wayland-rs 0.31+ API로 재작성
KDE Plasma 6.5.5 크래시 수정 (KeyState::Repeated 처리)
tokio async I/O로 indicator 트레이 아이콘 오류 수정
주요 의존성 업데이트
사용하지 않는 의존성 삭제
Note
wayland-client 0.29 → 0.31 (Dispatch trait pattern)
ksni 0.2 → 0.3.3 + tokio async
xkbcommon 0.7 → 0.9, xdg 2.5 → 3.0, quick-xml 0.27 → 0.39
Remove zwp-virtual-keyboard (merged into wayland-protocols-misc)
Checklist